home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Games of Daze
/
Infomagic - Games of Daze (Summer 1995) (Disc 1 of 2).iso
/
x2ftp
/
msdos
/
misc
/
moonbas2
/
fixed.cpp
< prev
next >
Wrap
C/C++ Source or Header
|
1994-06-14
|
933b
|
54 lines
#include "fixed.h"
static int cos_table [] =
{
#include "costable.h"
};
void FIX_cos_sin
(
angle_t angle,
fixed * cosine,
fixed * sine
)
{
while ( angle < 0 )
angle += 3600;
while ( angle >= 3600 )
angle -= 3600;
if ( angle < 1800 )
{
if ( angle < 900 )
{
*cosine = cos_table [angle];
*sine = cos_table [900-angle];
}
else
{
angle -= 900;
*sine = cos_table [angle];
*cosine = -cos_table [900-angle];
}
}
else
{
if ( angle < 2700 )
{
angle -= 1800;
*cosine = -cos_table [angle];
*sine = -cos_table [900-angle];
}
else
{
angle -= 2700;
*sine = -cos_table [angle];
*cosine = cos_table [900-angle];
}
}
}